package demo.entity;

import com.jesse.eclgy.plug.annotations.TableField;
import com.jesse.eclgy.plug.annotations.TableName;
import com.jesse.eclgy.plug.entity.BaseMode;
import com.jesse.eclgy.plug.enums.FieldType;
import lombok.*;

/**
 * @TableName 支持数据库所有表 ，此处 实例为建模，建模 有一些标准字段，继承了BaseMode 标准字段就可以直接用。
 */
@Data
@TableName("uf_doorinfo")
public class DemoEntity extends BaseMode {
    /**
     * 是否主键，父类也有，会被此类替换，删除，更新，自动为条件
     */
    @TableField(isKey = true)
    private Integer id;

    /**
     * 字段数据库 name 别名，实体 和 数据库 不一致 定义。
     * fieldType 字段类型 默认ALL，此定义为 查询、插入、更新时 使用此字段
     */
    @TableField(fieldType = {FieldType.QUERY, FieldType.INSERT, FieldType.UPDATE}, name = "modedatamodifydatetime")
    private String updateTime;

    /**
     * 因fieldType 默认为 FieldType.ALL，此字段数据库没有 需要定义空数组
     */
    @TableField(fieldType = {})
    private String openType;
    /**
     * int类型 需要定义为 Integer  为null时 不更新数据。
     */
    private Integer userId;

}